// Copyright (c) 2021 Spotify AB.
//
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements.  See the NOTICE file
// distributed with this work for additional information
// regarding copyright ownership.  The ASF licenses this file
// to you under the Apache License, Version 2.0 (the
// "License"); you may not use this file except in compliance
// with the License.  You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing,
// software distributed under the License is distributed on an
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
// KIND, either express or implied.  See the License for the
// specific language governing permissions and limitations
// under the License.

import Foundation

extension IDEActivityLogSection {

    func with(messages newMessages: [IDEActivityLogMessage]) -> IDEActivityLogSection {
        return IDEActivityLogSection(sectionType: self.sectionType,
                                     domainType: self.domainType,
                                     title: self.title,
                                     signature: self.signature,
                                     timeStartedRecording: self.timeStartedRecording,
                                     timeStoppedRecording: self.timeStoppedRecording,
                                     subSections: self.subSections,
                                     text: self.text,
                                     messages: newMessages,
                                     wasCancelled: self.wasCancelled,
                                     isQuiet: self.isQuiet,
                                     wasFetchedFromCache: self.wasFetchedFromCache,
                                     subtitle: self.subtitle,
                                     location: self.location,
                                     commandDetailDesc: self.commandDetailDesc,
                                     uniqueIdentifier: self.uniqueIdentifier,
                                     localizedResultString: self.localizedResultString,
                                     xcbuildSignature: self.xcbuildSignature,
                                     attachments: self.attachments,
                                     unknown: self.unknown)
    }

}
